Overview

The role of temporal dispersal patterns in building diverse tallgrass prairie plant communities

Background:

Establishing diverse plant communities is critical since diversity is linked to ecosystem health. However, recreating tallgrass prairies with high plant diversity has been challenging, especially for early-season species. Variation in species arrival may influence plant community composition and diversity. Since prairies exhibit temporal patterns of seed dispersal, planting all species simultaneously could forgo phenological differences that promote species coexistence. Therefore, we investigated whether manipulating plant species’ arrival according to natural dispersal phenology influences reconstruction outcomes.

In 2021, we manipulated the arrival of 36 species via seed additions of (i) species in the order of peak dispersal timing, (ii) summer dispersing species (first peak in dispersal activity before September 1st) followed by 18 fall dispersing species, (iii) 18 fall dispersing species followed by 18 summer dispersing species, (iv) all species simultaneously. Additionally, we had a negative control that had no seed additions. One year later, we found that differences in seeding treatment influenced the diversity and composition of reconstructed communities. Species arriving later had less cover than when seeded with priority, particularly for summer dispersing species. Overall, our study provides evidence of priority effects in reconstructed grasslands and suggests that the timing of seed additions post-disturbance influences restoration outcomes.

Author: Katherine Carter Wynne ()

Co-authors: Lauren L. Sullivan

Created: 06 December 2022


Files:

  1. PE_Cover_Inner_Fall_2021_Cleaned.xlsx - vegetative cover taken at peak biomass in 2021 (August 27th - August 30th); only half of the lumped seedings occured.

  2. PE_Cover_Inner_Summer_2022_Cleaned.xlsx - vegetative cover measured in Summer 2022 (June 27th - June 28th)

  3. PE_Cover_Inner_Fall_2022_Cleaned.xlsx - vegetative cover taken at peak biomass in 2022 (August 25th - August 26th)

  4. PE_Cover_Inner_Summer_2023_Cleaned.xlsx - vegetative cover measured in Summer 2023 (June 21st - June 23rd)

  5. PE_Cover_Inner_Fall_2023_Cleaned.xlsx - vegetative cover taken at peak biomass in 2023 (August 10th - August 11th)

  6. Bradford_10_Year_Weather.xlsx - weather (temperature and precipitation) data from the last 10 years at Bradford Research Farm

  7. Priority_Effects_Fall_2022_Light.xlsx - light data from August 2022; measured at the same time as peak biomass cover

  8. Priority_Effects_Fall_2023_Light.xlsx - light data from August 2023; measured at the same time as peak biomass cover

  9. PE_Bare_Ground_Cleaned_2021.xlsx - Litter and bare ground cover from August 2021

  10. Species_List.xlsx - Species list


R Version: R 4.2.2

RStudio Version: 2023.06.1+524

Package Version: Found in the .readme document in GitHub Repository

Last updated: 29 September 2023


Overall Setup

Materials and Methods

Study Site

Our experiment utilized a former agricultural field (~1 acre) at the University of Missouri’s Bradford Research Center in Columbia, MO (38.893604, -92.201154, Boone County, MO). Typical for the central U.S., the 10-year (2011 – 2021) mean annual precipitation and average air temperature at Bradford Research Center were 927.74 \(\pm\) 143.01 mm and 12.40 \(\pm\) 10.45 \(\circ\)C, respectively (Commercial Agriculture Automated Weather Station Network, d.n.). Prior to our experiment, the field we grew herbicide-resistant soybeans for at least three years, reflecting conditions similar to most prairie reconstructions before seeding (Rowe, 2010; Newbold et al., 2019). In March 2021, we tilled our study site and hand-removed rhizome clumps to create a smooth surface before our first seeding.

Experimental Design

We used seed additions to manipulate the arrival of 36 native tallgrass prairie plant species. Since prairies experience two peaks in dispersal activity (Rabinowitz & Rapp 1980), we classified species into two dispersal guilds, summer-dispersing species (first peak in dispersal activity before September 1st) and fall-dispersing species. Dispersal guild is more informative than flowering guild because dispersal does not always follow flowering (e.g., Penstemon digitalis). We based our classifications on expert opinion from the Missouri Department of Conservation, The Nature Conservancy, and our previous work on seed rain patterns in Missouri tallgrass prairies (Wynne et al. in prep). Species used in our study consisted of 29 native species captured in our previous study on seed rain and seven summer-dispersing species that restoration managers cited as having minimal success in prairie reconstructions (e.g., Viola pedatifida) (Table S1) (Barak et al., 2022). When possible, we obtained seeds from local ecotype commercial sellers. However, several summer-dispersing species were not grown commercially in Missouri and were sourced elsewhere. We stored the seeds in a refrigerator (2.78 \(\circ\)C) until seeding.

We used a randomized factorial block design to test the effects of seeding timing and order (Fig. 1). Each block (n = 6) contained five plots (2 x 2 m) randomly assigned a seed addition treatment following one of the four arrival treatments:

  1. the addition of species in order of first peak in dispersal activity (NAT)

    - May 24th 2021 (VIOPED, PACPLA)
    - June 4th 2021 (SISCAM, SPHOBT, CORLAN)
    - June 22nd 2021 (LOBSPI, TRAOHI, CARBUS, HEURIC)
    - July 11th 2021 (CORPAL, DODMEA)
    - July 25th 2021 (KOEMAC, AMOCAN)
    - August 2nd 2021 (LINSUL, MELVIR)
    - August 21st 2021 (DALCAN, DALPUR, ACHMIL)
    - September 17th 2021 (CROSAG)
    - October 4th 2021 (CHAFAS, MONFIS, RATPIN, SPOHET, RUDHIR)
    - October 18th 2021 (BIDARI, HELMOL, LESCAP)
    - November 1st 2021 (PENDIG, ERYYUC, HYPPUN, SORNUT, SCHSCO, LIAPYC)
    - November 19th 2021 (CORTRI, PYCTEN, SOLRIG)
  2. the lumped addition of 18 summer-dispersing species on March 22nd, 2021 followed by a lumped addition of 18 fall-dispersing species approximately five months later on September 5th, 2021 (LE)

  3. the lumped addition of 18 fall-dispersing species on March 22nd, 2021 followed by a lumped addition of 18 summer-dispersing species approximately five months later on September 5th, 2021 (LL)

  4. the simultaneous addition of the entire species pool on March 22nd, 2021 typical of most prairie reconstructions (SIM).

Additionally, we had an unseeded negative control (NON) to determine whether active seeding treatments improved community diversity compared to passive regeneration from ambient seed sources (e.g., seed rain and soil seed bank). We also seeded white clover (Trifolium repens) between the experimental plots to prevent erosion. In fall 2022, we started annually removing invading white clover and woody species from plots. All other unseeded species were not weeded to better reflect realistic assembly and reconstruction processes.

We started seeding at the end of the dormant season (March 22nd, 2021) and continued until November 19th, 2021. We hand-seeded species into experimental plots at a density of 50 seeds \(m^{-2}\) using sand as a broadcasting agent. For treatments requiring multiple seedings, we incorporated M-Binder tackifier (Ecology Controls, Carpinteria, CA), a natural adhesive often used in hydroseeding, into the seeding mixes to increase soil-seed contact without disturbing the existing vegetation. After seeding, we lightly watered plots to activate the tackifier. All plots received equal amounts of sand, tackifier, and water during every seeding.

Data Collection

Starting in 2022, we conducted floristic surveys to assess plant community diversity and composition in experimental plots for two years. To determine species abundance, we measured the percent aerial cover of all vascular plant species rooted within a 1 \(m^{2}\) subplot in the center of the experimental plot. Because many seeded summer-dispersing species senesce before peak biomass (August – September), we measured vegetative cover twice yearly, once in the early summer (late June) and again at peak biomass (late August). We only used the highest percent cover value for species present in both surveys. We identified species according to Yatskievych (1999, 2006, 2013). Additionally, we measured environmental variables including percent bare ground cover and light levels in plots. For each plot, we measured light levels using a (insert name of light bar) two times above the vegetation, in the midstory, and ground-level at solar noon \(\pm\) 2 hours.

Data Setup

Each tab below contains the code used to import, clean, and manipulate data to later use for further analyses.

Load libraries

## Libraries


### ----- Data Cleaning and Management -----

# Import excel files

library(readxl)


# Export dataframes to excel files

library(writexl)


# Data cleaning and visualization

library(tidyverse)



### ----- Data Analysis -----

# Community ecology functions (NMDS, diversity indices, etc.)

library(vegan)
library(BiodiversityR)

# Mixed models

library(lme4)
library(lmerTest)
library(MuMIn)

# Checks model assumptions

library(rstatix)

### ----- Data visualization -----


#Functions that assist in making high quality figures

library(cowplot)
library(ggpubr)
library(ggrepel)
library(flextable)

Import Datasets

## Import Datasets

## inner (1 m^2) cover for Summer
#### comprehensive vegetative cover (%) for all species in the inner (1 m^2) permanent sampling area. 

inner_cover_summer_2022 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Cover_Inner_Summer_2022_Cleaned.xlsx")

inner_cover_summer_2023 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Cover_Inner_Summer_2023_Cleaned.xlsx")

## inner (1 m^2) cover for Fall
#### comprehensive vegetative cover (%) for all species in the inner (1 m^2) permanent sampling area. 


inner_cover_fall_2021 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Cover_Inner_Fall_2021_Cleaned.xlsx")

inner_cover_fall_2022 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Cover_Inner_Fall_2022_Cleaned.xlsx")

inner_cover_fall_2023 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Cover_Inner_Fall_2023_Cleaned.xlsx")


## Bradford weather
weather <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Environment/Bradford_10_Year_Weather.xlsx")


## Light

light_fall_2022 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Environment/Priority_Effects_Fall_2022_Light.xlsx")

light_fall_2023 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Environment/Priority_Effects_Fall_2023_Light.xlsx")


## Bare and litter - 2021

bare_cover_2021 <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Cover/PE_Bare_Ground_Cleaned_2021.xlsx")


## Species list

species_list_PE <- read_excel("~/Priority-Effects/Priority Effects - Github/Data/Species_List.xlsx")

Dataset cleaning

2021

## 2021 Inner Cover - Dataset cleaning


### Remove unnecessary columns

#### Get rid of the notes, unknown, and senensced columns

### Fall
inner_cover_fall_2021 <- inner_cover_fall_2021[,-c(6,7,8)]


#### change log
 # - senesced PLASPP changed to PLAVIR since PLALAN and PLAMAJ do not senesce until Oct.  (Sep 6, 2023)
 # - JUNSPP changed to JUNINT since JUNINT has been observed in 2022 and 2023 (Sep 6, 2023)


### Get rid of EMP

### Fall
inner_cover_fall_2021 <- subset(inner_cover_fall_2021, Treatment != "EMP")

2022

## 2022 Inner Cover - Dataset cleaning

### Remove unnecessary columns

### Get rid of the notes, unknown, and sentenced columns

#### Summer
inner_cover_summer_2022 <- inner_cover_summer_2022[,-8]

#### change log
 # - Fixed IDs: most GALAPA -> GALPED and HEURIC -> GEUCAN (Sep 6, 2023)


#### Fall
inner_cover_fall_2022 <- inner_cover_fall_2022[,-c(8,9,10)]

#### change log
 # - Fixed IDs: VERSPP -> VERARV since this is the species observed in the summer (Sep 6, 2023)



### Get rid of EMP 

#### Summer
inner_cover_summer_2022 <- subset(inner_cover_summer_2022, Treatment != "EMP")

#### Fall
inner_cover_fall_2022 <- subset(inner_cover_fall_2022, Treatment != "EMP")

2023

## 2023 Inner Cover - Dataset cleaning

### Remove unnecessary columns

### Get rid of the notes, unknown, and sentenced columns

#### Summer
inner_cover_summer_2023 <- inner_cover_summer_2023[,-c(6,7)]

#### change log
 # - Fixed IDs: was able to ID ALLSPP as ALLVIN (Sep 6, 2023)


#### Fall
inner_cover_fall_2023 <- inner_cover_fall_2023[,-c(6,7)]


### Get rid of EMP 

#### Summer
inner_cover_summer_2023 <- subset(inner_cover_summer_2023, Treatment != "EMP")

#### Fall
inner_cover_fall_2023 <- subset(inner_cover_fall_2023, Treatment != "EMP")

Joining Years

#Checking to make sure all the SPP6 levels are correct (no misspellings or weirdness)

### Fall 2021
sort(unique(inner_cover_fall_2021$SPP6))
##  [1] "ACAVIR"     "ACHMIL"     "AGRHYE"     "AMATUB"     "AMBART"    
##  [6] "AMBTRI"     "BARVUL"     "BIDARI"     "BROJAP"     "CARFRA"    
## [11] "CHAFAS"     "CONCAN"     "CORLAN"     "CORTIN"     "CORTRI"    
## [16] "CROSAG"     "CYNDAC"     "CYPODO"     "DALCAN"     "DIGISC"    
## [21] "DIGSAN"     "ECHSPP"     "ERACIL"     "ERIANN"     "ERYYUC"    
## [26] "GERCAR"     "GLYMAX"     "HELAUT"     "HELMOL"     "HORPUS"    
## [31] "IPOHED"     "IPOLAC"     "IVAANN"     "JUNINT"     "LEPSPP"    
## [36] "LESCAP"     "LINSUL"     "LONMAC"     "LOTCOR"     "MELOFF"    
## [41] "MOLVER"     "MONFIS"     "MYOVER"     "OXADIL"     "PACKERA?"  
## [46] "PANCAP"     "PANDIC"     "PENDIG"     "PERHYD/PUN" "PERPEN"    
## [51] "PHAARU"     "PHYSPP"     "PLALAN"     "PLAMAJ"     "PLAVIR"    
## [56] "POTNOR"     "RANARV"     "RATPIN"     "RUDHIR"     "RUMCRI"    
## [61] "SCHSCO"     "SETFAB"     "SETPUM"     "SIDSPI"     "SOLCAN"    
## [66] "SOLCAR"     "SORNUT"     "SYMPIL"     "TAROFF"     "TRIREP"    
## [71] "VERURT"     "VIOPED"     "XANSTR"
### Summer 2022
sort(unique(inner_cover_summer_2022$SPP6))
##  [1] "ACHMIL" "AGRHYE" "BARVUL" "BROJAP" "CARBRE" "CARFRA" "CERSPP" "CORLAN"
##  [9] "CORPAL" "ERIANN" "GALAPA" "GALPED" "GERCAR" "GEUCAN" "HORPUS" "LOTCOR"
## [17] "MELOFF" "MYOVER" "PENDIG" "PHAARU" "PLALAN" "PLAMAJ" "PLAVIR" "POTNOR"
## [25] "RANABO" "RUDHIR" "RUMCRI" "SILANT" "SPHOBT" "TAROFF" "TRIPRA" "TRIREP"
## [33] "VERARV" "VIOPED"
### Fall 2022
sort(unique(inner_cover_fall_2022$SPP6))
##  [1] "ACAVIR"     "ACHMIL"     "AGRHYE"     "AMBART"     "AMBTRI"    
##  [6] "BARE"       "BARVUL"     "BIDARI"     "BROJAP"     "CARFRA"    
## [11] "CARSPP"     "CHAFAS"     "CONCAN"     "CORLAN"     "CORPAL"    
## [16] "CORTRI"     "CYNDAC"     "DESSPP"     "DIGISC"     "DIGSAN"    
## [21] "ECHSPP"     "ERASPE"     "ERIANN"     "ERYYUC"     "FESARU"    
## [26] "HELAUT"     "HELMOL"     "HORPUS"     "IPOLAC"     "IVAANN"    
## [31] "JUNINT"     "LACSER"     "LESCAP"     "LIAPYC"     "LINSUL"    
## [36] "LITTER"     "LONMAC"     "LOTCOR"     "MONFIS"     "MORALB"    
## [41] "MYOVER"     "OXADIL"     "PANCAP"     "PANDIC"     "PENDIG"    
## [46] "PERHYD/PUN" "PHAARU"     "PLALAN"     "PLAMAJ"     "POAPRA"    
## [51] "POTNOR"     "RANABO"     "RATPIN"     "RUDHIR"     "RUMCRI"    
## [56] "SETFAB"     "SETPUM"     "SIDSPI"     "SOLCAN"     "SOLCAR"    
## [61] "SORNUT"     "SPOHET"     "TAROFF"     "TRIPRA"     "TRIREP"    
## [66] "VERARV"     "VERURT"     "VIOPED"
### Summer 2023
sort(unique(inner_cover_summer_2023$SPP6))
##  [1] "ACHMIL" "AGRHYE" "ALLVIN" "BARVUL" "BROJAP" "CARBRE" "CARFRA" "CARSPP"
##  [9] "CERSPP" "CORLAN" "ERIANN" "FESARU" "GALAPA" "GALPED" "GERCAR" "GEUCAN"
## [17] "HORPUS" "JUNINT" "KOEMAC" "LEPVIR" "LONMAC" "LOTCOR" "MELSPP" "MYOVER"
## [25] "OXADIL" "PENDIG" "PHAARU" "PLALAN" "PLAMAJ" "PLAVIR" "POAPRA" "PYCTEN"
## [33] "RANABO" "RUDHIR" "RUMCRI" "SILANT" "SPHOBT" "TAROFF" "TRIPRA" "TRIREP"
## [41] "VERARV" "VIOPED"
### Fall 2023
sort(unique(inner_cover_fall_2023$SPP6))
##  [1] "ACHMIL" "AGRHYE" "AMBART" "AMBTRI" "BARE"   "BARVUL" "BIDARI" "CARFRA"
##  [9] "CARSPP" "CERSPP" "CHAFAS" "CONCAN" "CORLAN" "CORTRI" "CYNDAC" "DESSPP"
## [17] "ECHSPP" "ERASPE" "ERIANN" "ERYYUC" "FESARU" "GEUCAN" "HELAUT" "HELMOL"
## [25] "IPOHED" "IPOLAC" "IVAANN" "KOEMAC" "LESCAP" "LIAPYC" "LITTER" "LONMAC"
## [33] "LOTCOR" "MELALB" "MELSPP" "MONFIS" "MYOVER" "OXADIL" "PANDIC" "PENDIG"
## [41] "PHAARU" "PLALAN" "PLAMAJ" "POAPRA" "PYCTEN" "RANABO" "RATPIN" "RUDHIR"
## [49] "RUMCRI" "SETFAB" "SETPUM" "SIDSPI" "SOLCAN" "SOLCAR" "SORNUT" "SPOHET"
## [57] "SYMPIL" "TAROFF" "TRIPRA" "TRIREP" "VERURT" "VIOPED"
### ^ above looks good so far
# Make a unique identifier for year and season

### 2021

#### Season
inner_cover_fall_2021$Season <- rep("Fall", nrow=(inner_cover_fall_2021))
#### Year
inner_cover_fall_2021$Year <- rep("2021", nrow=(inner_cover_fall_2021))


### 2022

# Already has the identifiers
inner_cover_fall_2022$Year <- as.factor(inner_cover_fall_2022$Year)
inner_cover_summer_2022$Year <- as.factor(inner_cover_summer_2022$Year)

### 2023

#### Season
inner_cover_summer_2023$Season <- rep("Summer", nrow=(inner_cover_summer_2023))
inner_cover_fall_2023$Season <- rep("Fall", nrow=(inner_cover_fall_2023))

#### Year
inner_cover_fall_2023$Year <- rep("2023", nrow=(inner_cover_fall_2023))
inner_cover_fall_2023$Year <- as.factor(inner_cover_fall_2023$Year)

inner_cover_summer_2023$Year <- rep("2023", nrow=(inner_cover_summer_2023))
inner_cover_summer_2023$Year <- as.factor(inner_cover_summer_2023$Year)
# Join summer and fall cover for each year 

full_2021_data <- inner_cover_fall_2021

full_2022_data <- full_join(inner_cover_summer_2022,inner_cover_fall_2022)

full_2023_data <- full_join(inner_cover_summer_2023,inner_cover_fall_2023)


# Join all years together

### First 2021 and 2022
full_21_22_data <- full_join(full_2021_data, full_2022_data)

### Then 2021 and 2022 with 2023
full_year_data <- full_join(full_21_22_data, full_2023_data)
# lump certain taxa together 

### Lump the Carex for now (*****Ask Lauren about what to do about when the CARSPP > CARFRA or CARBRE?***)

## MELOFF + MELALB -> MELSPP
## LEPVIR -> LEPSPP
## CARFRA -> CARSPP
## CARBRE -> CARSPP

for(i in 1:nrow(full_year_data)) {
  if(full_year_data[i,3] == "CARFRA"){full_year_data [i,3] <- "CARSPP"}
  if(full_year_data[i,3] == "CARBRE"){full_year_data [i,3] <- "CARSPP"}
  if(full_year_data[i,3] == "MELOFF"){full_year_data [i,3] <- "MELSPP"}
  if(full_year_data[i,3] == "MELALB"){full_year_data [i,3] <- "MELSPP"}
  if(full_year_data[i,3] == "LEPSPP"){full_year_data [i,3] <- "LEPVIR"}
  if(full_year_data[i,3] == "ECHSPP"){full_year_data [i,3] <- "ECHCRU"}
  
  # Make all cover data that was less than 1 = to 1 (to make the data discrete)
  if(full_year_data[i,4] < 1) {full_year_data [i,4] <- 1}
  
}
# Function below takes that highest cover value for a species seen twice (e.g., once in the summer and again in fall)

inner_cover_max <- full_year_data  %>%
      group_by(Block, Treatment, Year, SPP6) %>%
      summarise(max_cover=max(Percent_Cover))

##### Note I manually checked species that were found in both the datasets (ACHMIL, TRIREP, CORLAN) and confirmed that the code above took the highest cover value for a species seen twice


### Remove Bare
inner_cover_max_only <- subset(inner_cover_max, SPP6 != "BARE")


### Remove Litter
inner_cover_max_only  <- subset(inner_cover_max_only, SPP6 != "LITTER")
#Checking again to make sure all the SPP6 levels are correct (no misspellings or weirdness)

sort(unique(inner_cover_max_only$SPP6))
##  [1] "ACAVIR"     "ACHMIL"     "AGRHYE"     "ALLVIN"     "AMATUB"    
##  [6] "AMBART"     "AMBTRI"     "BARVUL"     "BIDARI"     "BROJAP"    
## [11] "CARSPP"     "CERSPP"     "CHAFAS"     "CONCAN"     "CORLAN"    
## [16] "CORPAL"     "CORTIN"     "CORTRI"     "CROSAG"     "CYNDAC"    
## [21] "CYPODO"     "DALCAN"     "DESSPP"     "DIGISC"     "DIGSAN"    
## [26] "ECHCRU"     "ERACIL"     "ERASPE"     "ERIANN"     "ERYYUC"    
## [31] "FESARU"     "GALAPA"     "GALPED"     "GERCAR"     "GEUCAN"    
## [36] "GLYMAX"     "HELAUT"     "HELMOL"     "HORPUS"     "IPOHED"    
## [41] "IPOLAC"     "IVAANN"     "JUNINT"     "KOEMAC"     "LACSER"    
## [46] "LEPVIR"     "LESCAP"     "LIAPYC"     "LINSUL"     "LONMAC"    
## [51] "LOTCOR"     "MELSPP"     "MOLVER"     "MONFIS"     "MORALB"    
## [56] "MYOVER"     "OXADIL"     "PACKERA?"   "PANCAP"     "PANDIC"    
## [61] "PENDIG"     "PERHYD/PUN" "PERPEN"     "PHAARU"     "PHYSPP"    
## [66] "PLALAN"     "PLAMAJ"     "PLAVIR"     "POAPRA"     "POTNOR"    
## [71] "PYCTEN"     "RANABO"     "RANARV"     "RATPIN"     "RUDHIR"    
## [76] "RUMCRI"     "SCHSCO"     "SETFAB"     "SETPUM"     "SIDSPI"    
## [81] "SILANT"     "SOLCAN"     "SOLCAR"     "SORNUT"     "SPHOBT"    
## [86] "SPOHET"     "SYMPIL"     "TAROFF"     "TRIPRA"     "TRIREP"    
## [91] "VERARV"     "VERURT"     "VIOPED"     "XANSTR"
SPP6_list <- sort(unique(inner_cover_max_only$SPP6))
SPP6_list <- as.data.frame(SPP6_list)

### Saw at least 94 different species across study
#### More since I had to lump MELOFF, MELALB, CARFRA, and CARBRE


### Function below makes the species list 

# write_xlsx(SPP6_list, "Species_List2.xlsx")
### Add species information to the dataset

#### N/A is N = native, A = non-native, G = Genus

inner_cover_max_only <- full_join(inner_cover_max_only, species_list_PE)

#Remove unnecessary columns

inner_cover_max_reduced <- inner_cover_max_only[, -c(6,7,10)]

Bare/Litter

### Bare dataset

inner_bare_cover <- subset(inner_cover_max, SPP6 == "BARE")

### Litter dataset

inner_litter_cover <- subset(inner_cover_max, SPP6 == "LITTER")


### Manipulate 2021 dataset to match 2022 and 2023

#### Bare Ground

bare_2021 <- subset(bare_cover_2021, Cover_Type != "Litter")
bare_2021 <- subset(bare_2021, Treatment != "EMP")
names(bare_2021) <- c("Block", "Treatment", "SPP6", "max_cover")
bare_2021$Year <- rep("2021", nrow(bare_2021))

for(i in 1:nrow(bare_2021)) {
  if(bare_2021[i,3] == "Bare"){bare_2021[i,3] <- "BARE"}
}

#### Litter 

litter_2021 <- subset(bare_cover_2021 , Cover_Type != "Bare")
litter_2021 <- subset(litter_2021, Treatment != "EMP")
names(litter_2021) <- c("Block", "Treatment", "SPP6", "max_cover")
litter_2021$Year <- rep("2021", nrow(litter_2021))


for(i in 1:nrow(litter_2021)) {
  if(bare_2021[i,3] == "Litter"){bare_2021[i,3] <- "LITTER"}
}


### Full_join datasets

inner_bare_cover <- full_join(inner_bare_cover, bare_2021)

inner_litter_cover <- full_join(inner_litter_cover, litter_2021)

Question 1: Does timing of species arrival influence local diversity?

Setup and Data Management

Data Analysis

We fit mixed-effects linear models with block as a random effect to determine whether year, timing of species arrival via seeding treatments, and the interaction between year and seeding treatments influenced local diversity (i.e., species richness, mean conservatism value, and Shannon diversity index) in reconstructed tallgrass prairie plant communities. In cases where random effect variance was estimated as near zero, we dropped the random effect and fit a simpler linear model instead. For each diversity model, we conducted a type III analysis of variance (ANOVA) followed by a posthoc Tukey test to determine significant pairwise differences.

Below is the code used to calculate the species richness, mean conservatism value, and Shannon diversity index for each plot, treatment, and year combination.

### Making a summary table of diversity indices between treatments

#Make a unique identifier for every block and treatment
inner_cover_max_reduced$UniqueBlock <- paste(inner_cover_max_reduced$Treatment, inner_cover_max_reduced$Block, sep="_")


### Making a community matrix

inner_cover_max_reduced_lumped <- inner_cover_max_reduced %>% 
  filter(Year != "2021") %>% 
  group_by(Block, Treatment, Year, SPP6) %>% 
  summarise(max_cover = sum(max_cover))


#Make a wide formatted dataset

inner_wide <- inner_cover_max_reduced_lumped  %>% 
  spread(key="SPP6", value="max_cover") 

#Replace NA values with 0

inner_wide[is.na(inner_wide)] <- 0 

#Make a separate dataframe for the labels
inner_wide.labs <- inner_wide[, c(1,2,3)]

#Turn our dataset into a matrix 
inner_wide_mat <- inner_wide[,-c(1,2,3)]


#Double check your work using the View() function. 

#View(inner_wide_mat)
## Calculate diversity metrics


# --- Species richness --- 

Species_richness <- specnumber(inner_wide_mat)


#  --- Shannon's Diversity --- 

#Calculate Shannon's Diversity
Shannon <- diversity(inner_wide_mat, index="shannon")


# --- Mean C --- 


# Make a dataset that has each treatment, the species found in that treatment, and their associated C values

inner_cover_max_reduced$C_Value <- as.numeric(inner_cover_max_reduced$C_Value)

C_hist <- inner_cover_max_reduced  %>% 
                  filter( C_Value >= 0) %>% 
                  group_by(Block, Treatment, SPP6, Year, C_Value) %>% 
            summarize(tot.cover = sum(max_cover)) %>% 
            select(-c(tot.cover))


# Calculate mean C for each Treatment in a Block
### Remember you have to filter out anything that isn't native!

Only_C <- inner_cover_max_reduced  %>% 
                  filter(Year != "2021") %>% 
                  filter( C_Value >= 0) %>% 
                  filter( C_Value != "NA") 

Only_C$C_Value <- as.numeric(Only_C$C_Value)

Mean_C <- Only_C %>% 
                  group_by(Block, Treatment, Year) %>% 
                  summarize(Mean_C = mean(C_Value))

Diversity Indices - Summary Statistics

Below is a summary table showing the mean and SD for mean C value (C), species richness (SR), and Shannon diversity index (SDI) for each seeding treatment.

Treatment

Year

C

± SD

Richness

± SD

SDI

± SD

LE

2022

1.68

0.58

20.00

3.46

2.12

0.20

LE

2023

1.91

0.47

18.17

1.83

2.18

0.16

LL

2022

1.99

0.41

21.00

2.19

2.25

0.20

LL

2023

2.62

0.20

17.83

2.40

2.16

0.13

NAT

2022

1.43

0.84

17.67

2.34

2.05

0.12

NAT

2023

1.45

0.73

17.00

3.69

2.01

0.28

NON

2022

0.48

0.34

15.00

2.61

1.86

0.17

NON

2023

0.42

0.41

14.50

2.74

1.75

0.20

SIM

2022

2.34

0.44

24.50

3.89

2.23

0.32

SIM

2023

2.84

0.32

22.17

5.08

2.34

0.36

Mean C

BioR.theme <- theme(
panel.background = element_blank(),
panel.border = element_blank(),
panel.grid = element_blank(),
axis.line = element_line("gray25"),
text = element_text(size = 16, family="Arial"),
axis.text = element_text(size = 13, colour = "gray25"),
axis.title = element_text(size = 16, colour = "gray25"),
legend.title = element_text(size = 16),
legend.text = element_text(size = 16),
legend.key = element_blank())

Mean C - Model assumptions

Distribution of C values for all treatments were right skewed, indicating the majority of native plants in all treatments were of low conservatism value. Simultaneous seeding had the most “even” distribution of C values and almost every value was represented in this treatment. Across years, the largest changes in the distribution of C values were in the treatments that seeded the fall dispersing species in September. These changes were attributed to the replacement of species with low c values with more conservative species. Plots that were never seeded mainly consisted of species with low conservatism value.

Generally, mean C values were normally distributed with few extreme outliers, suggesting we can use a linear model to predict mean c as a function of treatment and year.

Mean C - Model fitting

I used a linear model to predict mean c as a function of seeding treatment, year, and an interaction between treatment and year. A mixed model using block as a random effect produced a singular fit because the variance explained by the random effect block was estimated as close to zero and did not further inform the data. Therefore, I chose to use the simpler model.

Model fit was high, with an adjusted \(R^{2}\) value of 0.687. Also, residual plots did not reveal any concerning patterns.

## 
## Call:
## lm(formula = Mean_C ~ Treatment * Year, data = Summary_table)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.09169 -0.29161 -0.06849  0.27592  1.24081 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)             1.6798     0.2074   8.099 1.17e-10 ***
## TreatmentLL             0.3127     0.2933   1.066  0.29156    
## TreatmentNAT           -0.2548     0.2933  -0.869  0.38919    
## TreatmentNON           -1.2037     0.2933  -4.104  0.00015 ***
## TreatmentSIM            0.6614     0.2933   2.255  0.02853 *  
## Year2023                0.2267     0.2933   0.773  0.44323    
## TreatmentLL:Year2023    0.4044     0.4148   0.975  0.33425    
## TreatmentNAT:Year2023  -0.2002     0.4148  -0.483  0.63143    
## TreatmentNON:Year2023  -0.2816     0.4148  -0.679  0.50038    
## TreatmentSIM:Year2023   0.2737     0.4148   0.660  0.51241    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.508 on 50 degrees of freedom
## Multiple R-squared:  0.735,  Adjusted R-squared:  0.6873 
## F-statistic: 15.41 on 9 and 50 DF,  p-value: 1.238e-11
# Residual plot looks decent
plot(Mean_C.mod.lm.interaction)

Analysis of variance (type III) revealed that seeding treatment was the only significant factor influence mean c value.

## Anova Table (Type III tests)
## 
## Response: Mean_C
##                 Sum Sq Df F value    Pr(>F)    
## (Intercept)    16.9303  1 65.5995 1.168e-10 ***
## Treatment      12.0134  4 11.6370 9.363e-07 ***
## Year            0.1542  1  0.5973    0.4432    
## Treatment:Year  1.0504  4  1.0175    0.4074    
## Residuals      12.9043 50                      
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Posthoc analysis indicated that all seeding treatments increased mean c value compared to unseeded plots. Seeding all species in one addition produced more conservative communities than treatments that seeded summer dispersing species first followed by fall dispersing species. Even though seeding only the fall dispersing species first produced higher quality communities than those that seeded species with natural timing, there was no difference in mean c between the seeding treatments that had two lumped additions.

Mean_C.mod.lm.est <- lm(Mean_C~Treatment, data =Summary_table)


est.lm.treatment_treatment <- emmeans::emmeans(Mean_C.mod.lm.est, ~ Treatment, type = "response")

pairs(est.lm.treatment_treatment, adjust = "tukey")
##  contrast  estimate    SE df t.ratio p.value
##  LE - LL     -0.515 0.213 55  -2.414  0.1270
##  LE - NAT     0.355 0.213 55   1.664  0.4644
##  LE - NON     1.345 0.213 55   6.303  <.0001
##  LE - SIM    -0.798 0.213 55  -3.742  0.0039
##  LL - NAT     0.870 0.213 55   4.077  0.0013
##  LL - NON     1.859 0.213 55   8.717  <.0001
##  LL - SIM    -0.283 0.213 55  -1.329  0.6748
##  NAT - NON    0.990 0.213 55   4.639  0.0002
##  NAT - SIM   -1.153 0.213 55  -5.406  <.0001
##  NON - SIM   -2.143 0.213 55 -10.045  <.0001
## 
## P value adjustment: tukey method for comparing a family of 5 estimates
#Posthoc test
#est.lm.treatment <- emmeans::emmeans(Mean_C.mod.lm.interaction, ~ Treatment*Year, type = "response")

#pairs(est.lm.treatment, adjust = "tukey")

Mean C - Figures

Overall, seeding fall dispersing species early either as part of one simultaneous or as two lumped additions produced the highest quality communities.

Species Richness

SIM treatments had the greatest species richness compared to all other treatments, while NON and NAT had the lowest.

SR - Model assumptions

Overall, species richness follows a normal distribution despite being count data. There were a couple of outliers in the natural seeding treatment but this is likely alright.

SR - Model fitting

I chose to use a linear mixed-effects model with block as a random effect to predict species richness as a function of seeding treatment, year, and an interaction between treatment and year. Despite being count data, the distribution of species richness is remarkably balanced and not skewed. Model comparison using AIC revealed that the Normal model performed better than the Poisson model, which was underdispersed. A more complicated Quasipoisson model that accounted for underdispersion produced similar results to the Normal mixed model. Therefore, I chose to use the less complicated Normal model.

Overall, model fit was decent. For example, \(R^{2}_{GLMM(m)}\) (i.e., the variance explained by only the fixed effects) was 0.474 and \(R^{2}_{GLMM(c)}\) (i.e., variance explained by the entire model) was 0.598. Inclusion of the random effect block substantially improved model fit. Furthermore, there were no strange patterns or occurrences in the model residuals.

## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Species_richness ~ Treatment * Year + (1 | Block)
##    Data: Summary_table
## 
## REML criterion at convergence: 268.7
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -3.1166 -0.6802  0.1632  0.5246  1.6376 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  Block    (Intercept) 2.347    1.532   
##  Residual             7.670    2.769   
## Number of obs: 60, groups:  Block, 6
## 
## Fixed effects:
##                       Estimate Std. Error      df t value Pr(>|t|)    
## (Intercept)            15.0000     1.2921 33.4679  11.609 2.79e-13 ***
## TreatmentNAT            2.6667     1.5990 45.0000   1.668 0.102310    
## TreatmentLE             5.0000     1.5990 45.0000   3.127 0.003092 ** 
## TreatmentLL             6.0000     1.5990 45.0000   3.752 0.000499 ***
## TreatmentSIM            9.5000     1.5990 45.0000   5.941 3.81e-07 ***
## Year2023               -0.5000     1.5990 45.0000  -0.313 0.755950    
## TreatmentNAT:Year2023  -0.1667     2.2613 45.0000  -0.074 0.941572    
## TreatmentLE:Year2023   -1.3333     2.2613 45.0000  -0.590 0.558381    
## TreatmentLL:Year2023   -2.6667     2.2613 45.0000  -1.179 0.244484    
## TreatmentSIM:Year2023  -1.8333     2.2613 45.0000  -0.811 0.421774    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) TrtNAT TrtmLE TrtmLL TrtSIM Yr2023 TNAT:Y TLE:Y2 TLL:Y2
## TreatmntNAT -0.619                                                        
## TreatmentLE -0.619  0.500                                                 
## TreatmentLL -0.619  0.500  0.500                                          
## TreatmntSIM -0.619  0.500  0.500  0.500                                   
## Year2023    -0.619  0.500  0.500  0.500  0.500                            
## TrNAT:Y2023  0.438 -0.707 -0.354 -0.354 -0.354 -0.707                     
## TrtLE:Y2023  0.438 -0.354 -0.707 -0.354 -0.354 -0.707  0.500              
## TrtLL:Y2023  0.438 -0.354 -0.354 -0.707 -0.354 -0.707  0.500  0.500       
## TrSIM:Y2023  0.438 -0.354 -0.354 -0.354 -0.707 -0.707  0.500  0.500  0.500
##          R2m       R2c
## [1,] 0.47437 0.5975126

A type III ANOVA revealed significant differences in species richness between years and seeding treatments. However, there was no significant interactive effect between year and seeding treatment on species richness.

Seeding treatments that added species either in one or two lumped additions had significantly greater species richness than unseeded plots. Multiple seedings according to natural dispersal activity did not increase species richness compared to unseeded plots. Adding the entire species pool simultaneously produced communities with the greatest species richness. Treatments that conducted multiple seedings resulted in communities possessing similar amounts of species richness regardless of timing and order of species arrival.

## Analysis of Deviance Table (Type III Wald chisquare tests)
## 
## Response: Species_richness
##                   Chisq Df Pr(>Chisq)    
## (Intercept)    134.7754  1  < 2.2e-16 ***
## Treatment       39.9131  4  4.511e-08 ***
## Year             0.0978  1     0.7545    
## Treatment:Year   1.9861  4     0.7383    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##  contrast  estimate   SE df t.ratio p.value
##  NON - NAT   -2.583 1.16 50  -2.227  0.1868
##  NON - LE    -4.333 1.16 50  -3.735  0.0042
##  NON - LL    -4.667 1.16 50  -4.023  0.0017
##  NON - SIM   -8.583 1.16 50  -7.399  <.0001
##  NAT - LE    -1.750 1.16 50  -1.509  0.5619
##  NAT - LL    -2.083 1.16 50  -1.796  0.3874
##  NAT - SIM   -6.000 1.16 50  -5.172  <.0001
##  LE - LL     -0.333 1.16 50  -0.287  0.9985
##  LE - SIM    -4.250 1.16 50  -3.664  0.0052
##  LL - SIM    -3.917 1.16 50  -3.376  0.0119
## 
## Degrees-of-freedom method: kenward-roger 
## P value adjustment: tukey method for comparing a family of 5 estimates

SR - Figures

Overall, seeding all species at the same time produced communities with the greatest species richness. For the most part, seeding increased species richness

Shannon Diversity Index

SDI - Model assumptions

SIM and LL treatments had the greatest Shannon diversity index value while NON had the lowest. NAT and LE appear comparable.

SDI - Model fitting

## Linear mixed model fit by REML. t-tests use Satterthwaite's method [
## lmerModLmerTest]
## Formula: Shannon ~ Treatment * Year + (1 | Block)
##    Data: Summary_table
## 
## REML criterion at convergence: 8.3
## 
## Scaled residuals: 
##      Min       1Q   Median       3Q      Max 
## -2.85891 -0.52869  0.09362  0.55482  1.78034 
## 
## Random effects:
##  Groups   Name        Variance Std.Dev.
##  Block    (Intercept) 0.007859 0.08865 
##  Residual             0.043564 0.20872 
## Number of obs: 60, groups:  Block, 6
## 
## Fixed effects:
##                       Estimate Std. Error       df t value Pr(>|t|)    
## (Intercept)            1.86312    0.09258 41.31457  20.125  < 2e-16 ***
## TreatmentNAT           0.18679    0.12050 45.00000   1.550  0.12812    
## TreatmentLE            0.26156    0.12050 45.00000   2.171  0.03528 *  
## TreatmentLL            0.38794    0.12050 45.00000   3.219  0.00239 ** 
## TreatmentSIM           0.36638    0.12050 45.00000   3.040  0.00393 ** 
## Year2023              -0.11202    0.12050 45.00000  -0.930  0.35755    
## TreatmentNAT:Year2023  0.07491    0.17042 45.00000   0.440  0.66235    
## TreatmentLE:Year2023   0.16975    0.17042 45.00000   0.996  0.32454    
## TreatmentLL:Year2023   0.02016    0.17042 45.00000   0.118  0.90637    
## TreatmentSIM:Year2023  0.21846    0.17042 45.00000   1.282  0.20644    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) TrtNAT TrtmLE TrtmLL TrtSIM Yr2023 TNAT:Y TLE:Y2 TLL:Y2
## TreatmntNAT -0.651                                                        
## TreatmentLE -0.651  0.500                                                 
## TreatmentLL -0.651  0.500  0.500                                          
## TreatmntSIM -0.651  0.500  0.500  0.500                                   
## Year2023    -0.651  0.500  0.500  0.500  0.500                            
## TrNAT:Y2023  0.460 -0.707 -0.354 -0.354 -0.354 -0.707                     
## TrtLE:Y2023  0.460 -0.354 -0.707 -0.354 -0.354 -0.707  0.500              
## TrtLL:Y2023  0.460 -0.354 -0.354 -0.707 -0.354 -0.707  0.500  0.500       
## TrSIM:Y2023  0.460 -0.354 -0.354 -0.354 -0.707 -0.707  0.500  0.500  0.500
## Analysis of Deviance Table (Type III Wald chisquare tests)
## 
## Response: Shannon
##                   Chisq Df Pr(>Chisq)    
## (Intercept)    405.0215  1  < 2.2e-16 ***
## Treatment       13.6013  4   0.008682 ** 
## Year             0.8641  1   0.352591    
## Treatment:Year   2.4685  4   0.650282    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##            R2m       R2c
## [1,] 0.3676227 0.4642721
##  contrast  estimate     SE df t.ratio p.value
##  NON - NAT  -0.2242 0.0852 45  -2.632  0.0814
##  NON - LE   -0.3464 0.0852 45  -4.066  0.0017
##  NON - LL   -0.3980 0.0852 45  -4.671  0.0003
##  NON - SIM  -0.4756 0.0852 45  -5.582  <.0001
##  NAT - LE   -0.1222 0.0852 45  -1.434  0.6095
##  NAT - LL   -0.1738 0.0852 45  -2.039  0.2644
##  NAT - SIM  -0.2514 0.0852 45  -2.950  0.0384
##  LE - LL    -0.0516 0.0852 45  -0.605  0.9735
##  LE - SIM   -0.1292 0.0852 45  -1.516  0.5578
##  LL - SIM   -0.0776 0.0852 45  -0.911  0.8914
## 
## Results are averaged over the levels of: Year 
## Degrees-of-freedom method: kenward-roger 
## P value adjustment: tukey method for comparing a family of 5 estimates

SDI - Figures

Plot Panel

Question 2: Does timing of species arrival influence seeded cover?

note some of the species used in the seed mix were present in the seed bank at my study site (e.g., RUDHIR and PENDIG). Additionally, some spillover occurred with seeded species seeding into other treatments like NON (e.g., BIDARI)

Seeded2 <- Seeded %>% filter(Year == "2023") %>% filter(max_cover > 0) 
unique(Seeded2$SPP6)
##  [1] "ACHMIL" "BIDARI" "CHAFAS" "CORLAN" "CORTRI" "ERYYUC" "HELMOL" "KOEMAC"
##  [9] "LESCAP" "LIAPYC" "MONFIS" "PENDIG" "PYCTEN" "RATPIN" "RUDHIR" "SORNUT"
## [17] "SPHOBT" "SPOHET" "VIOPED"

Total Seeded Cover

TSC - Model fitting

## 
## Call:
## glm(formula = cbind(seeded_cover, tot_cover) ~ Treatment * Year, 
##     family = binomial, data = Total_Cover_Tot)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -6.4760  -2.0224  -0.4559   1.5998   4.5960  
## 
## Coefficients:
##                       Estimate Std. Error z value Pr(>|z|)    
## (Intercept)           -2.11998    0.08881 -23.870  < 2e-16 ***
## TreatmentLL            0.94324    0.10412   9.059  < 2e-16 ***
## TreatmentNAT          -0.38112    0.13799  -2.762  0.00575 ** 
## TreatmentSIM           1.06270    0.10397  10.221  < 2e-16 ***
## Year2023               0.62783    0.11282   5.565 2.63e-08 ***
## TreatmentLL:Year2023  -0.41302    0.13685  -3.018  0.00254 ** 
## TreatmentNAT:Year2023 -0.36533    0.18174  -2.010  0.04441 *  
## TreatmentSIM:Year2023 -0.37777    0.13662  -2.765  0.00569 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 837.79  on 47  degrees of freedom
## Residual deviance: 293.23  on 40  degrees of freedom
## AIC: 557.58
## 
## Number of Fisher Scoring iterations: 5
## Analysis of Deviance Table (Type III tests)
## 
## Response: cbind(seeded_cover, tot_cover)
##                LR Chisq Df Pr(>Chisq)    
## Treatment       272.445  3  < 2.2e-16 ***
## Year             32.035  1  1.514e-08 ***
## Treatment:Year   10.305  3    0.01614 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##  contrast                    odds.ratio     SE  df null z.ratio p.value
##  LE Year2022 / LL Year2022        0.389 0.0405 Inf    1  -9.059  <.0001
##  LE Year2022 / NAT Year2022       1.464 0.2020 Inf    1   2.762  0.1048
##  LE Year2022 / SIM Year2022       0.346 0.0359 Inf    1 -10.221  <.0001
##  LE Year2022 / LE Year2023        0.534 0.0602 Inf    1  -5.565  <.0001
##  LE Year2022 / LL Year2023        0.314 0.0328 Inf    1 -11.076  <.0001
##  LE Year2022 / NAT Year2023       1.126 0.1469 Inf    1   0.909  0.9853
##  LE Year2022 / SIM Year2023       0.269 0.0281 Inf    1 -12.574  <.0001
##  LL Year2022 / NAT Year2022       3.760 0.4466 Inf    1  11.150  <.0001
##  LL Year2022 / SIM Year2022       0.887 0.0680 Inf    1  -1.558  0.7751
##  LL Year2022 / LE Year2023        1.371 0.1210 Inf    1   3.572  0.0085
##  LL Year2022 / LL Year2023        0.807 0.0625 Inf    1  -2.774  0.1016
##  LL Year2022 / NAT Year2023       2.892 0.3181 Inf    1   9.654  <.0001
##  LL Year2022 / SIM Year2023       0.691 0.0534 Inf    1  -4.784  <.0001
##  NAT Year2022 / SIM Year2022      0.236 0.0280 Inf    1 -12.169  <.0001
##  NAT Year2022 / LE Year2023       0.365 0.0461 Inf    1  -7.977  <.0001
##  NAT Year2022 / LL Year2023       0.215 0.0256 Inf    1 -12.917  <.0001
##  NAT Year2022 / NAT Year2023      0.769 0.1096 Inf    1  -1.842  0.5909
##  NAT Year2022 / SIM Year2023      0.184 0.0219 Inf    1 -14.231  <.0001
##  SIM Year2022 / LE Year2023       1.545 0.1361 Inf    1   4.935  <.0001
##  SIM Year2022 / LL Year2023       0.909 0.0702 Inf    1  -1.234  0.9218
##  SIM Year2022 / NAT Year2023      3.259 0.3580 Inf    1  10.753  <.0001
##  SIM Year2022 / SIM Year2023      0.779 0.0600 Inf    1  -3.246  0.0258
##  LE Year2023 / LL Year2023        0.588 0.0523 Inf    1  -5.971  <.0001
##  LE Year2023 / NAT Year2023       2.109 0.2495 Inf    1   6.312  <.0001
##  LE Year2023 / SIM Year2023       0.504 0.0447 Inf    1  -7.729  <.0001
##  LL Year2023 / NAT Year2023       3.585 0.3958 Inf    1  11.563  <.0001
##  LL Year2023 / SIM Year2023       0.857 0.0667 Inf    1  -1.988  0.4901
##  NAT Year2023 / SIM Year2023      0.239 0.0264 Inf    1 -12.981  <.0001
## 
## P value adjustment: tukey method for comparing a family of 8 estimates 
## Tests are performed on the log odds ratio scale
##  contrast  odds.ratio     SE  df null z.ratio p.value
##  LE / LL        0.479 0.0328 Inf    1 -10.767  <.0001
##  LE / NAT       1.757 0.1597 Inf    1   6.204  <.0001
##  LE / SIM       0.417 0.0285 Inf    1 -12.792  <.0001
##  LL / NAT       3.671 0.2977 Inf    1  16.039  <.0001
##  LL / SIM       0.872 0.0476 Inf    1  -2.510  0.0584
##  NAT / SIM      0.237 0.0192 Inf    1 -17.751  <.0001
## 
## Results are averaged over the levels of: Year 
## P value adjustment: tukey method for comparing a family of 4 estimates 
## Tests are performed on the log odds ratio scale
##  contrast            odds.ratio     SE  df null z.ratio p.value
##  Year2022 / Year2023      0.713 0.0378 Inf    1  -6.391  <.0001
## 
## Results are averaged over the levels of: Treatment 
## Tests are performed on the log odds ratio scale

TSC - Figures

Seeded cover of summer dispersing species

ESC - Model fitting

## 
## Call:
## glm(formula = cbind(seeded_cover, tot_cover) ~ Treatment * Year, 
##     family = binomial, data = Total_Cover_Early)
## 
## Deviance Residuals: 
##     Min       1Q   Median       3Q      Max  
## -4.5269  -1.6530  -0.6525   0.6905   5.3617  
## 
## Coefficients:
##                       Estimate Std. Error z value Pr(>|z|)    
## (Intercept)           -3.12457    0.14169 -22.052  < 2e-16 ***
## TreatmentLL           -3.45260    0.72165  -4.784 1.72e-06 ***
## TreatmentNAT          -1.75402    0.36336  -4.827 1.38e-06 ***
## TreatmentSIM          -0.02306    0.19589  -0.118   0.9063    
## Year2023               1.31396    0.16248   8.087 6.12e-16 ***
## TreatmentLL:Year2023   0.12909    0.81902   0.158   0.8748    
## TreatmentNAT:Year2023 -0.47403    0.43501  -1.090   0.2758    
## TreatmentSIM:Year2023 -0.48390    0.23465  -2.062   0.0392 *  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 734.86  on 47  degrees of freedom
## Residual deviance: 242.95  on 40  degrees of freedom
## AIC: 382.21
## 
## Number of Fisher Scoring iterations: 6
## Analysis of Deviance Table (Type III tests)
## 
## Response: cbind(seeded_cover, tot_cover)
##                LR Chisq Df Pr(>Chisq)    
## Treatment       101.429  3     <2e-16 ***
## Year             77.567  1     <2e-16 ***
## Treatment:Year    4.840  3     0.1839    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##  contrast  odds.ratio     SE  df null z.ratio p.value
##  LE / LL      28.6759 9.7820 Inf    1   9.838  <.0001
##  LE / NAT      8.1535 1.6265 Inf    1  10.519  <.0001
##  LE / SIM      1.4366 0.1537 Inf    1   3.387  0.0039
##  LL / NAT      0.2843 0.1089 Inf    1  -3.284  0.0056
##  LL / SIM      0.0501 0.0172 Inf    1  -8.706  <.0001
##  NAT / SIM     0.1762 0.0360 Inf    1  -8.502  <.0001
## 
## Results are averaged over the levels of: Year 
## P value adjustment: tukey method for comparing a family of 4 estimates 
## Tests are performed on the log odds ratio scale
##  contrast            odds.ratio     SE  df null z.ratio p.value
##  Year2022 / Year2023      0.339 0.0375 Inf    1  -9.780  <.0001
## 
## Results are averaged over the levels of: Treatment 
## Tests are performed on the log odds ratio scale

ESC - Figures

Fall dispersing species only

LSC - Model fitting

## Generalized linear mixed model fit by maximum likelihood (Laplace
##   Approximation) [glmerMod]
##  Family: binomial  ( logit )
## Formula: cbind(seeded_cover, tot_cover) ~ Treatment * Year + (1 | Block)
##    Data: Total_Cover_Late
## 
##      AIC      BIC   logLik deviance df.resid 
##    605.9    622.7   -294.0    587.9       39 
## 
## Scaled residuals: 
##     Min      1Q  Median      3Q     Max 
## -4.3695 -1.7158 -0.2698  1.3040  6.3985 
## 
## Random effects:
##  Groups Name        Variance Std.Dev.
##  Block  (Intercept) 0.008133 0.09018 
## Number of obs: 48, groups:  Block, 6
## 
## Fixed effects:
##                       Estimate Std. Error z value Pr(>|z|)    
## (Intercept)           -2.58027    0.11551 -22.337   <2e-16 ***
## TreatmentLL            1.39406    0.12224  11.404   <2e-16 ***
## TreatmentNAT          -0.02426    0.15556  -0.156   0.8761    
## TreatmentSIM           1.38226    0.12347  11.195   <2e-16 ***
## Year2023              -0.21472    0.16549  -1.298   0.1945    
## TreatmentLL:Year2023   0.41778    0.18280   2.285   0.0223 *  
## TreatmentNAT:Year2023  0.40151    0.22446   1.789   0.0737 .  
## TreatmentSIM:Year2023  0.35654    0.18505   1.927   0.0540 .  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Correlation of Fixed Effects:
##             (Intr) TrtmLL TrtNAT TrtSIM Yr2023 TLL:Y2 TNAT:Y
## TreatmentLL -0.848                                          
## TreatmntNAT -0.667  0.630                                   
## TreatmntSIM -0.841  0.794  0.624                            
## Year2023    -0.627  0.593  0.466  0.587                     
## TrtLL:Y2023  0.567 -0.669 -0.421 -0.531 -0.905              
## TrNAT:Y2023  0.462 -0.436 -0.693 -0.433 -0.737  0.667       
## TrSIM:Y2023  0.561 -0.530 -0.417 -0.667 -0.894  0.809  0.659
## Analysis of Deviance Table (Type III Wald chisquare tests)
## 
## Response: cbind(seeded_cover, tot_cover)
##                   Chisq Df Pr(>Chisq)    
## (Intercept)    498.9454  1     <2e-16 ***
## Treatment      257.9890  3     <2e-16 ***
## Year             1.6835  1     0.1945    
## Treatment:Year   5.3509  3     0.1478    
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##  contrast  odds.ratio     SE  df null z.ratio p.value
##  LE / LL        0.204 0.0185 Inf    1 -17.520  <.0001
##  LE / NAT       0.844 0.0942 Inf    1  -1.523  0.4236
##  LE / SIM       0.213 0.0196 Inf    1 -16.836  <.0001
##  LL / NAT       4.137 0.3519 Inf    1  16.695  <.0001
##  LL / SIM       1.044 0.0592 Inf    1   0.762  0.8717
##  NAT / SIM      0.252 0.0218 Inf    1 -15.971  <.0001
## 
## P value adjustment: tukey method for comparing a family of 4 estimates 
## Tests are performed on the log odds ratio scale

LSC - Figures

Plot Panel

Species specific differences

## 
##  One Sample t-test
## 
## data:  test2$difference
## t = 5.4921, df = 89, p-value = 3.722e-07
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  3.935637 8.397697
## sample estimates:
## mean of x 
##  6.166667

Question 3: Does timing of species arrival influence species composition?

Year: 2022

## Call: capscale(formula = inner.hel.2022 ~ Treatment, data =
## env.data.2022, distance = "bray", add = TRUE)
## 
##               Inertia Proportion Rank
## Total          5.2303     1.0000     
## Constrained    1.3054     0.2496    4
## Unconstrained  3.9249     0.7504   25
## Inertia is Lingoes adjusted squared Bray distance 
## Species scores projected from 'inner.hel.2022' 
## 
## Eigenvalues for constrained axes:
##   CAP1   CAP2   CAP3   CAP4 
## 0.7780 0.2700 0.1622 0.0951 
## 
## Eigenvalues for unconstrained axes:
##   MDS1   MDS2   MDS3   MDS4   MDS5   MDS6   MDS7   MDS8 
## 0.6356 0.5795 0.3816 0.3128 0.2577 0.2215 0.1801 0.1636 
## (Showing 8 of 25 unconstrained eigenvalues)
## 
## Constant added to distances: 0.04616913
## Permutation test for capscale under reduced model
## Terms added sequentially (first to last)
## Permutation: free
## Number of permutations: 999
## 
## Model: capscale(formula = inner.hel.2022 ~ Treatment, data = env.data.2022, distance = "bray", add = TRUE)
##           Df SumOfSqs      F Pr(>F)    
## Treatment  4   1.3054 2.0787  0.001 ***
## Residual  25   3.9249                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Multiple comparisons for capscale for all contrasts of Treatment 
## 
## Model:  BiodiversityR::multiconstrained(method = "capscale", formula = inner.hel.2022 ~ Treatment, data = env.data.2022, distance = "bray", add = TRUE, by = "term") 
## 
##             Df SumOfSqs      F Pr(>F)   
## LE vs. LL    1  0.32432 3.2161  0.002 **
## LE vs. NAT   1  0.08466 0.6738  0.821   
## LE vs. NON   1  0.17841 1.4894  0.147   
## LE vs. SIM   1  0.31377 2.6708  0.009 **
## LL vs. NAT   1  0.25386 2.4115  0.007 **
## LL vs. NON   1  0.41839 4.0950  0.002 **
## LL vs. SIM   1  0.17717 1.9078  0.026 * 
## NAT vs. NON  1  0.12521 1.0170  0.417   
## NAT vs. SIM  1  0.37810 3.0297  0.006 **
## NON vs. SIM  1  0.58402 4.4124  0.002 **
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

##   UniqueBlock Block Treatment Year Bare_cover  Above Ground Middle      axis1
## 1        LE_1     1        LE <NA>         NA 1575.5     67  239.5  0.1972492
## 2        LL_1     1        LL 2022         14 1565.0     31  215.0  0.5347085
## 3       NAT_1     1       NAT 2022          4 1535.0     32  128.5 -0.1406260
## 4       NON_1     1       NON 2022         21 1615.0     97  327.0 -0.9804828
## 5       SIM_1     1       SIM 2022          2 1580.5     22  626.0  0.8481231
## 6        LE_2     2        LE 2022         10 1611.0    163  422.0 -0.2901226
##        axis2 labels
## 1  0.6045100   LE_1
## 2 -1.1137381   LL_1
## 3  0.2744536  NAT_1
## 4 -0.5992826  NON_1
## 5  1.8782134  SIM_1
## 6  1.4166027   LE_2
##                   axis1        axis2     labels
## ACAVIR     -0.006008204  0.016117636     ACAVIR
## ACHMIL      0.093094438  0.362505436     ACHMIL
## AGRHYE     -0.004782507  0.030748736     AGRHYE
## AMBART     -0.208852864  0.091952609     AMBART
## AMBTRI     -0.428556038 -0.328139152     AMBTRI
## BARVUL     -0.049439479 -0.095805705     BARVUL
## BIDARI      0.797000344 -0.064935790     BIDARI
## BROJAP      0.068859178  0.037430641     BROJAP
## CARSPP     -0.053158136 -0.002509873     CARSPP
## CERSPP      0.023202628  0.008807489     CERSPP
## CHAFAS      0.367367781 -0.028321349     CHAFAS
## CONCAN     -0.026968872 -0.013640467     CONCAN
## CORLAN      0.123340666  0.155258587     CORLAN
## CORPAL     -0.010351027  0.045227007     CORPAL
## CORTRI      0.293671016  0.055425203     CORTRI
## CYNDAC     -0.016689528 -0.007974788     CYNDAC
## DESSPP      0.004607686 -0.021774399     DESSPP
## DIGISC      0.006014269  0.054940582     DIGISC
## DIGSAN      0.014074920  0.030691080     DIGSAN
## ECHCRU      0.010405194 -0.002504749     ECHCRU
## ERASPE      0.018708556  0.011928367     ERASPE
## ERIANN     -0.047772923 -0.056868794     ERIANN
## ERYYUC      0.035857121 -0.016077179     ERYYUC
## FESARU      0.010008021 -0.009192402     FESARU
## GALAPA     -0.034610819 -0.016538151     GALAPA
## GALPED     -0.007083947  0.002917414     GALPED
## GERCAR     -0.003196141 -0.001035795     GERCAR
## GEUCAN     -0.009940237 -0.001487902     GEUCAN
## HELAUT     -0.053593075  0.030579573     HELAUT
## HELMOL      0.143177961 -0.080582159     HELMOL
## HORPUS     -0.053964531 -0.115438563     HORPUS
## IPOLAC     -0.028212997  0.016348401     IPOLAC
## IVAANN      0.271128208 -0.098559267     IVAANN
## JUNINT      0.011212451 -0.018311201     JUNINT
## LACSER      0.018220422  0.011617139     LACSER
## LESCAP      0.120770477 -0.030731700     LESCAP
## LIAPYC      0.018220422  0.011617139     LIAPYC
## LINSUL     -0.006008204  0.016117636     LINSUL
## LONMAC      0.013138551  0.028325394     LONMAC
## LOTCOR      0.060357359  0.439072311     LOTCOR
## MELSPP     -0.023321641 -0.003490894     MELSPP
## MONFIS      0.006362175  0.028027839     MONFIS
## MORALB     -0.023602557 -0.011278053     MORALB
## MYOVER     -0.038100531  0.064879834     MYOVER
## OXADIL     -0.059749318  0.015912623     OXADIL
## PANCAP     -0.022514949  0.012972583     PANCAP
## PANDIC      0.014263890 -0.008694408     PANDIC
## PENDIG     -0.075330315  0.026481070     PENDIG
## PERHYD/PUN -0.006955814  0.018659700 PERHYD/PUN
## PHAARU     -0.057011167 -0.008533703     PHAARU
## PLALAN      0.060266244 -0.031388255     PLALAN
## PLAMAJ     -0.017931491  0.024749616     PLAMAJ
## PLAVIR     -0.028169712  0.008470708     PLAVIR
## POAPRA      0.057777903  0.058555617     POAPRA
## POTNOR      0.035636056 -0.016824560     POTNOR
## RANABO      0.045445018  0.037109504     RANABO
## RATPIN      0.349464198 -0.204597369     RATPIN
## RUDHIR      0.168412441 -0.106482601     RUDHIR
## RUMCRI     -0.119921876  0.051308968     RUMCRI
## SETFAB     -0.280689952 -0.123981210     SETFAB
## SETPUM     -0.086944686  0.031082108     SETPUM
## SIDSPI      0.003926296  0.005169633     SIDSPI
## SILANT     -0.017093692 -0.008167910     SILANT
## SOLCAN     -0.008245445 -0.001234217     SOLCAN
## SOLCAR     -0.002854291 -0.031375886     SOLCAR
## SORNUT      0.438160671 -0.090402558     SORNUT
## SPHOBT      0.033163152  0.021144457     SPHOBT
## SPOHET      0.027077600  0.017264377     SPOHET
## TAROFF      0.005398239  0.047326941     TAROFF
## TRIPRA      0.042813445  0.027297377     TRIPRA
## TRIREP     -0.334539986  0.062465795     TRIREP
## VERARV     -0.017915091  0.030207386     VERARV
## VERURT      0.019420535 -0.031715930     VERURT
## VIOPED      0.003119899  0.053746570     VIOPED
##   axis     ggplot        label
## 1    1 xlab.label CAP1 (14.9%)
## 2    2 ylab.label  CAP2 (5.2%)
##                      r     p        axis1        axis2     labels
## ACAVIR     0.022423330 0.897 -0.006008204  0.016117636     ACAVIR
## ACHMIL     0.267385105 0.014  0.093094438  0.362505436     ACHMIL
## AGRHYE     0.020790196 0.745 -0.004782507  0.030748736     AGRHYE
## AMBART     0.100835455 0.247 -0.208852864  0.091952609     AMBART
## AMBTRI     0.417154589 0.001 -0.428556038 -0.328139152     AMBTRI
## BARVUL     0.142593264 0.105 -0.049439479 -0.095805705     BARVUL
## BIDARI     0.810117020 0.001  0.797000344 -0.064935790     BIDARI
## BROJAP     0.040567684 0.577  0.068859178  0.037430641     BROJAP
## CARSPP     0.021553112 0.745 -0.053158136 -0.002509873     CARSPP
## CERSPP     0.001496530 0.987  0.023202628  0.008807489     CERSPP
## CHAFAS     0.474920474 0.002  0.367367781 -0.028321349     CHAFAS
## CONCAN     0.053713894 0.489 -0.026968872 -0.013640467     CONCAN
## CORLAN     0.313524722 0.005  0.123340666  0.155258587     CORLAN
## CORPAL     0.238932593 0.020 -0.010351027  0.045227007     CORPAL
## CORTRI     0.601926327 0.001  0.293671016  0.055425203     CORTRI
## CYNDAC     0.086656738 0.353 -0.016689528 -0.007974788     CYNDAC
## DESSPP     0.066463787 0.407  0.004607686 -0.021774399     DESSPP
## DIGISC     0.033682458 0.610  0.006014269  0.054940582     DIGISC
## DIGSAN     0.249724122 0.015  0.014074920  0.030691080     DIGSAN
## ECHCRU     0.004225335 0.958  0.010405194 -0.002504749     ECHCRU
## ERASPE     0.156878614 0.069  0.018708556  0.011928367     ERASPE
## ERIANN     0.151974441 0.106 -0.047772923 -0.056868794     ERIANN
## ERYYUC     0.174538146 0.052  0.035857121 -0.016077179     ERYYUC
## FESARU     0.002451403 0.968  0.010008021 -0.009192402     FESARU
## GALAPA     0.057035368 0.511 -0.034610819 -0.016538151     GALAPA
## GALPED     0.051992149 0.504 -0.007083947  0.002917414     GALPED
## GERCAR     0.015711784 0.795 -0.003196141 -0.001035795     GERCAR
## GEUCAN     0.059537899 0.514 -0.009940237 -0.001487902     GEUCAN
## HELAUT     0.009153851 0.920 -0.053593075  0.030579573     HELAUT
## HELMOL     0.348955522 0.004  0.143177961 -0.080582159     HELMOL
## HORPUS     0.078598038 0.324 -0.053964531 -0.115438563     HORPUS
## IPOLAC     0.040195293 0.609 -0.028212997  0.016348401     IPOLAC
## IVAANN     0.452111185 0.001  0.271128208 -0.098559267     IVAANN
## JUNINT     0.087959654 0.344  0.011212451 -0.018311201     JUNINT
## LACSER     0.028163954 0.838  0.018220422  0.011617139     LACSER
## LESCAP     0.294505709 0.009  0.120770477 -0.030731700     LESCAP
## LIAPYC     0.028163954 0.838  0.018220422  0.011617139     LIAPYC
## LINSUL     0.022423330 0.897 -0.006008204  0.016117636     LINSUL
## LONMAC     0.109178147 0.202  0.013138551  0.028325394     LONMAC
## LOTCOR     0.632672595 0.001  0.060357359  0.439072311     LOTCOR
## MELSPP     0.073191881 0.434 -0.023321641 -0.003490894     MELSPP
## MONFIS     0.091006435 0.295  0.006362175  0.028027839     MONFIS
## MORALB     0.086656738 0.353 -0.023602557 -0.011278053     MORALB
## MYOVER     0.021727889 0.752 -0.038100531  0.064879834     MYOVER
## OXADIL     0.062351991 0.448 -0.059749318  0.015912623     OXADIL
## PANCAP     0.078886299 0.350 -0.022514949  0.012972583     PANCAP
## PANDIC     0.012992173 0.838  0.014263890 -0.008694408     PANDIC
## PENDIG     0.062091729 0.415 -0.075330315  0.026481070     PENDIG
## PERHYD/PUN 0.032621759 0.748 -0.006955814  0.018659700 PERHYD/PUN
## PHAARU     0.005514002 0.965 -0.057011167 -0.008533703     PHAARU
## PLALAN     0.053836631 0.494  0.060266244 -0.031388255     PLALAN
## PLAMAJ     0.092558185 0.299 -0.017931491  0.024749616     PLAMAJ
## PLAVIR     0.055946060 0.450 -0.028169712  0.008470708     PLAVIR
## POAPRA     0.308355898 0.004  0.057777903  0.058555617     POAPRA
## POTNOR     0.036814799 0.630  0.035636056 -0.016824560     POTNOR
## RANABO     0.168089570 0.086  0.045445018  0.037109504     RANABO
## RATPIN     0.762898772 0.001  0.349464198 -0.204597369     RATPIN
## RUDHIR     0.245858291 0.022  0.168412441 -0.106482601     RUDHIR
## RUMCRI     0.189189414 0.068 -0.119921876  0.051308968     RUMCRI
## SETFAB     0.263760964 0.010 -0.280689952 -0.123981210     SETFAB
## SETPUM     0.123566924 0.160 -0.086944686  0.031082108     SETPUM
## SIDSPI     0.053442260 0.499  0.003926296  0.005169633     SIDSPI
## SILANT     0.066847324 0.448 -0.017093692 -0.008167910     SILANT
## SOLCAN     0.073191881 0.434 -0.008245445 -0.001234217     SOLCAN
## SOLCAR     0.002126070 0.965 -0.002854291 -0.031375886     SOLCAR
## SORNUT     0.723214569 0.001  0.438160671 -0.090402558     SORNUT
## SPHOBT     0.103419584 0.218  0.033163152  0.021144457     SPHOBT
## SPOHET     0.103419584 0.218  0.027077600  0.017264377     SPOHET
## TAROFF     0.025841687 0.715  0.005398239  0.047326941     TAROFF
## TRIPRA     0.103419584 0.218  0.042813445  0.027297377     TRIPRA
## TRIREP     0.319511632 0.006 -0.334539986  0.062465795     TRIREP
## VERARV     0.029894618 0.664 -0.017915091  0.030207386     VERARV
## VERURT     0.087959654 0.344  0.019420535 -0.031715930     VERURT
## VIOPED     0.012060294 0.860  0.003119899  0.053746570     VIOPED
##                r     p       axis1       axis2 labels
## AMBTRI 0.4171546 0.001 -0.42855604 -0.32813915 AMBTRI
## BIDARI 0.8101170 0.001  0.79700034 -0.06493579 BIDARI
## CHAFAS 0.4749205 0.002  0.36736778 -0.02832135 CHAFAS
## CORLAN 0.3135247 0.005  0.12334067  0.15525859 CORLAN
## CORTRI 0.6019263 0.001  0.29367102  0.05542520 CORTRI
## HELMOL 0.3489555 0.004  0.14317796 -0.08058216 HELMOL
## IVAANN 0.4521112 0.001  0.27112821 -0.09855927 IVAANN
## LESCAP 0.2945057 0.009  0.12077048 -0.03073170 LESCAP
## LOTCOR 0.6326726 0.001  0.06035736  0.43907231 LOTCOR
## POAPRA 0.3083559 0.004  0.05777790  0.05855562 POAPRA
## RATPIN 0.7628988 0.001  0.34946420 -0.20459737 RATPIN
## SORNUT 0.7232146 0.001  0.43816067 -0.09040256 SORNUT
## TRIREP 0.3195116 0.006 -0.33453999  0.06246580 TRIREP

Year: 2023

## Call: capscale(formula = inner.hel.2023 ~ Treatment, data =
## env.data.2023, distance = "bray", add = TRUE)
## 
##               Inertia Proportion Rank
## Total          6.9891     1.0000     
## Constrained    2.1779     0.3116    4
## Unconstrained  4.8112     0.6884   25
## Inertia is Lingoes adjusted squared Bray distance 
## Species scores projected from 'inner.hel.2023' 
## 
## Eigenvalues for constrained axes:
##   CAP1   CAP2   CAP3   CAP4 
## 1.2793 0.5587 0.1951 0.1448 
## 
## Eigenvalues for unconstrained axes:
##   MDS1   MDS2   MDS3   MDS4   MDS5   MDS6   MDS7   MDS8 
## 0.9056 0.5751 0.4231 0.3484 0.3151 0.2644 0.2448 0.2020 
## (Showing 8 of 25 unconstrained eigenvalues)
## 
## Constant added to distances: 0.07353803
## Permutation test for capscale under reduced model
## Terms added sequentially (first to last)
## Permutation: free
## Number of permutations: 999
## 
## Model: capscale(formula = inner.hel.2023 ~ Treatment, data = env.data.2023, distance = "bray", add = TRUE)
##           Df SumOfSqs      F Pr(>F)    
## Treatment  4   2.1779 2.8293  0.001 ***
## Residual  25   4.8112                  
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## Multiple comparisons for capscale for all contrasts of Treatment 
## 
## Model:  BiodiversityR::multiconstrained(method = "capscale", formula = inner.hel.2023 ~ Treatment + Middle, data = env.data.2023, distance = "bray", add = TRUE) 
## 
##             Df SumOfSqs      F Pr(>F)    
## LE vs. LL    2  0.69934 3.0708  0.002 ** 
## LE vs. NAT   2  0.50498 1.9481  0.004 ** 
## LE vs. NON   2  0.56809 2.5858  0.002 ** 
## LE vs. SIM   2  0.73330 3.0429  0.001 ***
## LL vs. NAT   2  0.67048 3.1916  0.001 ***
## LL vs. NON   2  0.75411 3.2193  0.004 ** 
## LL vs. SIM   2  0.48995 2.4513  0.001 ***
## NAT vs. NON  2  0.41024 1.7280  0.043 *  
## NAT vs. SIM  2  1.00295 3.5901  0.001 ***
## NON vs. SIM  2  1.30967 5.0803  0.001 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

##   Block Treatment Year Bare_cover  Above Ground Middle      axis1       axis2
## 1     1        LE 2023          3 1852.0  114.0 1305.5  0.3235240  0.97861112
## 2     1        LL 2023          3 1840.0   59.0 1363.0  0.4635640 -1.30930289
## 3     1       NAT 2023          2 1854.5  127.0 1335.0 -0.3078386 -0.09574612
## 4     1       NON 2023          4 1806.0   43.5  671.0 -0.9735907 -0.61681094
## 5     1       SIM 2023         13 1819.5   87.5 1486.5  1.3223244  0.48542950
## 6     2        LE 2023         18 1786.0  196.5 1252.0 -0.3090734  1.33903914
##   labels
## 1      1
## 2      2
## 3      3
## 4      4
## 5      5
## 6      6
##               axis1         axis2 labels
## ACHMIL  0.282123709  0.6094954469 ACHMIL
## AGRHYE  0.087359063  0.0623064897 AGRHYE
## ALLVIN -0.001255458 -0.0009606486 ALLVIN
## AMBART -0.014050310  0.1086545383 AMBART
## AMBTRI -0.329468542 -0.2390976891 AMBTRI
## BARVUL -0.015382337 -0.0481392101 BARVUL
## BIDARI  0.087630581  0.0480216113 BIDARI
## BROJAP -0.194557870 -0.1025568741 BROJAP
## CARSPP -0.021609618 -0.0531817633 CARSPP
## CERSPP  0.039989064  0.0147692754 CERSPP
## CHAFAS  0.201331646 -0.0011431121 CHAFAS
## CONCAN -0.088868520 -0.0507829036 CONCAN
## CORLAN  0.179197899  0.2636075799 CORLAN
## CORTRI  0.549910092 -0.0626534359 CORTRI
## CYNDAC -0.046767669 -0.0146124832 CYNDAC
## DESSPP -0.008431895 -0.0027905132 DESSPP
## ECHCRU  0.026081208  0.0085991451 ECHCRU
## ERASPE  0.031165172 -0.0205246821 ERASPE
## ERIANN -0.021493131 -0.0324714527 ERIANN
## ERYYUC  0.139523726 -0.0469663481 ERYYUC
## FESARU  0.024227483  0.0136751008 FESARU
## GALAPA -0.003179650  0.0195859426 GALAPA
## GALPED  0.025575409  0.0083412217 GALPED
## GERCAR -0.027434745 -0.0244882870 GERCAR
## GEUCAN -0.007635406 -0.0025269172 GEUCAN
## HELAUT -0.058590460 -0.0476292815 HELAUT
## HELMOL  0.388051624 -0.1461800038 HELMOL
## HORPUS -0.245516668 -0.2122385895 HORPUS
## IPOHED -0.043298448 -0.0135285307 IPOHED
## IPOLAC -0.038808665 -0.0309936344 IPOLAC
## IVAANN  0.053246435  0.0175556985 IVAANN
## JUNINT  0.010748819 -0.0194224930 JUNINT
## KOEMAC  0.080879882  0.1946778902 KOEMAC
## LEPVIR -0.021145723  0.0349173261 LEPVIR
## LESCAP  0.148360055 -0.0730947839 LESCAP
## LIAPYC  0.021027342  0.0069328524 LIAPYC
## LONMAC  0.017225658  0.0303503857 LONMAC
## LOTCOR  0.236295783  0.4319138078 LOTCOR
## MELSPP -0.044552220 -0.0139202695 MELSPP
## MONFIS  0.077410279  0.0985084204 MONFIS
## MYOVER -0.030476782  0.0531258360 MYOVER
## OXADIL -0.090838731  0.0373495953 OXADIL
## PANDIC  0.015067883  0.0245596171 PANDIC
## PENDIG -0.104131917  0.0681731451 PENDIG
## PHAARU -0.028769841 -0.0095609363 PHAARU
## PLALAN  0.026571798  0.0090753431 PLALAN
## PLAMAJ -0.035153023  0.0117857217 PLAMAJ
## PLAVIR -0.021471580  0.0131821878 PLAVIR
## POAPRA  0.122722587  0.0787376862 POAPRA
## PYCTEN -0.010157993 -0.0033617606 PYCTEN
## RANABO  0.028825843  0.0101286707 RANABO
## RATPIN  0.646459476 -0.3688547370 RATPIN
## RUDHIR  0.101378148 -0.0395345725 RUDHIR
## RUMCRI -0.043768944  0.0753300407 RUMCRI
## SETFAB -0.234699042 -0.1293971308 SETFAB
## SETPUM -0.689121036  0.1175005218 SETPUM
## SIDSPI -0.039289864 -0.0124365008 SIDSPI
## SILANT -0.018264495 -0.0057067122 SILANT
## SOLCAN -0.036887126 -0.0115253234 SOLCAN
## SOLCAR -0.105263164 -0.0419151251 SOLCAR
## SORNUT  0.773779511 -0.2645035077 SORNUT
## SPHOBT  0.043504674  0.0143437762 SPHOBT
## SPOHET  0.051506258  0.0169819508 SPOHET
## SYMPIL -0.018040071  0.0395691552 SYMPIL
## TAROFF -0.078818634  0.0290926851 TAROFF
## TRIPRA  0.078677109  0.0259403584 TRIPRA
## TRIREP -0.081028549  0.1152367868 TRIREP
## VERARV -0.049258546 -0.0169803063 VERARV
## VERURT  0.010748819 -0.0194224930 VERURT
## VIOPED -0.007864259  0.0484421012 VIOPED
##   axis     ggplot        label
## 1    1 xlab.label CAP1 (18.3%)
## 2    2 ylab.label    CAP2 (8%)
##                   r     p        axis1         axis2 labels
## ACHMIL 0.5601380095 0.001  0.282123709  0.6094954469 ACHMIL
## AGRHYE 0.1645555664 0.094  0.087359063  0.0623064897 AGRHYE
## ALLVIN 0.0127911396 0.837 -0.001255458 -0.0009606486 ALLVIN
## AMBART 0.0434391522 0.562 -0.014050310  0.1086545383 AMBART
## AMBTRI 0.3703721171 0.005 -0.329468542 -0.2390976891 AMBTRI
## BARVUL 0.1176822669 0.188 -0.015382337 -0.0481392101 BARVUL
## BIDARI 0.0809734118 0.328  0.087630581  0.0480216113 BIDARI
## BROJAP 0.0596372480 0.464 -0.194557870 -0.1025568741 BROJAP
## CARSPP 0.0179187495 0.786 -0.021609618 -0.0531817633 CARSPP
## CERSPP 0.0538897844 0.470  0.039989064  0.0147692754 CERSPP
## CHAFAS 0.3331452492 0.004  0.201331646 -0.0011431121 CHAFAS
## CONCAN 0.2640827450 0.014 -0.088868520 -0.0507829036 CONCAN
## CORLAN 0.4245688710 0.004  0.179197899  0.2636075799 CORLAN
## CORTRI 0.6626062833 0.001  0.549910092 -0.0626534359 CORTRI
## CYNDAC 0.0789470996 0.381 -0.046767669 -0.0146124832 CYNDAC
## DESSPP 0.0117061411 0.964 -0.008431895 -0.0027905132 DESSPP
## ECHCRU 0.0301284456 0.836  0.026081208  0.0085991451 ECHCRU
## ERASPE 0.0626523518 0.436  0.031165172 -0.0205246821 ERASPE
## ERIANN 0.0513436688 0.494 -0.021493131 -0.0324714527 ERIANN
## ERYYUC 0.2319436684 0.024  0.139523726 -0.0469663481 ERYYUC
## FESARU 0.0008986903 0.996  0.024227483  0.0136751008 FESARU
## GALAPA 0.0703998734 0.429 -0.003179650  0.0195859426 GALAPA
## GALPED 0.0812269764 0.316  0.025575409  0.0083412217 GALPED
## GERCAR 0.0250208866 0.702 -0.027434745 -0.0244882870 GERCAR
## GEUCAN 0.0147350822 0.930 -0.007635406 -0.0025269172 GEUCAN
## HELAUT 0.0287880316 0.796 -0.058590460 -0.0476292815 HELAUT
## HELMOL 0.4922572747 0.001  0.388051624 -0.1461800038 HELMOL
## HORPUS 0.1753464960 0.082 -0.245516668 -0.2122385895 HORPUS
## IPOHED 0.0789470996 0.381 -0.043298448 -0.0135285307 IPOHED
## IPOLAC 0.0246375999 0.729 -0.038808665 -0.0309936344 IPOLAC
## IVAANN 0.2586509988 0.005  0.053246435  0.0175556985 IVAANN
## JUNINT 0.1247339001 0.069  0.010748819 -0.0194224930 JUNINT
## KOEMAC 0.3908449487 0.005  0.080879882  0.1946778902 KOEMAC
## LEPVIR 0.1315929038 0.165 -0.021145723  0.0349173261 LEPVIR
## LESCAP 0.3851024636 0.001  0.148360055 -0.0730947839 LESCAP
## LIAPYC 0.1475434211 0.027  0.021027342  0.0069328524 LIAPYC
## LONMAC 0.1794696077 0.049  0.017225658  0.0303503857 LONMAC
## LOTCOR 0.3760528223 0.002  0.236295783  0.4319138078 LOTCOR
## MELSPP 0.1433337737 0.087 -0.044552220 -0.0139202695 MELSPP
## MONFIS 0.2018076436 0.043  0.077410279  0.0985084204 MONFIS
## MYOVER 0.1630130048 0.094 -0.030476782  0.0531258360 MYOVER
## OXADIL 0.1392429894 0.128 -0.090838731  0.0373495953 OXADIL
## PANDIC 0.0004771830 0.994  0.015067883  0.0245596171 PANDIC
## PENDIG 0.1295821649 0.168 -0.104131917  0.0681731451 PENDIG
## PHAARU 0.0018538701 0.996 -0.028769841 -0.0095609363 PHAARU
## PLALAN 0.0007884290 0.989  0.026571798  0.0090753431 PLALAN
## PLAMAJ 0.0804672975 0.366 -0.035153023  0.0117857217 PLAMAJ
## PLAVIR 0.0886742425 0.307 -0.021471580  0.0131821878 PLAVIR
## POAPRA 0.1439644558 0.115  0.122722587  0.0787376862 POAPRA
## PYCTEN 0.0247516791 0.907 -0.010157993 -0.0033617606 PYCTEN
## RANABO 0.0566382536 0.463  0.028825843  0.0101286707 RANABO
## RATPIN 0.7495450551 0.001  0.646459476 -0.3688547370 RATPIN
## RUDHIR 0.0889322638 0.292  0.101378148 -0.0395345725 RUDHIR
## RUMCRI 0.0755227716 0.308 -0.043768944  0.0753300407 RUMCRI
## SETFAB 0.3145284505 0.008 -0.234699042 -0.1293971308 SETFAB
## SETPUM 0.6924257010 0.001 -0.689121036  0.1175005218 SETPUM
## SIDSPI 0.0781615309 0.435 -0.039289864 -0.0124365008 SIDSPI
## SILANT 0.0658486892 0.545 -0.018264495 -0.0057067122 SILANT
## SOLCAN 0.0416455571 0.802 -0.036887126 -0.0115253234 SOLCAN
## SOLCAR 0.1036699504 0.235 -0.105263164 -0.0419151251 SOLCAR
## SORNUT 0.7647581223 0.001  0.773779511 -0.2645035077 SORNUT
## SPHOBT 0.1460387038 0.103  0.043504674  0.0143437762 SPHOBT
## SPOHET 0.1475434211 0.027  0.051506258  0.0169819508 SPOHET
## SYMPIL 0.0700349987 0.380 -0.018040071  0.0395691552 SYMPIL
## TAROFF 0.0641529399 0.408 -0.078818634  0.0290926851 TAROFF
## TRIPRA 0.1475434211 0.027  0.078677109  0.0259403584 TRIPRA
## TRIREP 0.3538387084 0.005 -0.081028549  0.1152367868 TRIREP
## VERARV 0.0941655509 0.258 -0.049258546 -0.0169803063 VERARV
## VERURT 0.1247339001 0.069  0.010748819 -0.0194224930 VERURT
## VIOPED 0.1757119416 0.050 -0.007864259  0.0484421012 VIOPED
##                r     p       axis1        axis2 labels
## ACHMIL 0.5601380 0.001  0.28212371  0.609495447 ACHMIL
## AMBTRI 0.3703721 0.005 -0.32946854 -0.239097689 AMBTRI
## CHAFAS 0.3331452 0.004  0.20133165 -0.001143112 CHAFAS
## CORLAN 0.4245689 0.004  0.17919790  0.263607580 CORLAN
## CORTRI 0.6626063 0.001  0.54991009 -0.062653436 CORTRI
## HELMOL 0.4922573 0.001  0.38805162 -0.146180004 HELMOL
## IVAANN 0.2586510 0.005  0.05324643  0.017555699 IVAANN
## KOEMAC 0.3908449 0.005  0.08087988  0.194677890 KOEMAC
## LESCAP 0.3851025 0.001  0.14836005 -0.073094784 LESCAP
## LOTCOR 0.3760528 0.002  0.23629578  0.431913808 LOTCOR
## RATPIN 0.7495451 0.001  0.64645948 -0.368854737 RATPIN
## SETFAB 0.3145285 0.008 -0.23469904 -0.129397131 SETFAB
## SETPUM 0.6924257 0.001 -0.68912104  0.117500522 SETPUM
## SORNUT 0.7647581 0.001  0.77377951 -0.264503508 SORNUT
## TRIREP 0.3538387 0.005 -0.08102855  0.115236787 TRIREP

Plot Panel